난수 발생기
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
난수 발생기는 무작위적인 숫자 또는 기호를 생성하는 장치 또는 알고리즘이다. 예측 불가능한 물리적 현상을 이용하는 물리적 난수 생성기와, 고정된 숫자에 의해 결정되는 의사 난수 생성기가 있다. 난수 생성기는 도박, 통계적 표본 추출, 컴퓨터 시뮬레이션, 암호학 등 다양한 분야에서 활용되며, 특히 보안 응용 프로그램에서는 예측 불가능성이 중요하기 때문에 하드웨어 난수 생성기를 선호한다. 난수 생성기의 출력은 후처리 과정을 거쳐 편향을 제거하고 통계적 특성을 개선하며, 생성된 난수의 무작위성을 확인하기 위해 통계적 검정을 수행한다. 암호화에서 난수 생성기는 백도어 문제와 같은 보안 취약성을 가질 수 있다.
더 읽어볼만한 페이지
- 난수 발생기 - 신뢰 플랫폼 모듈
신뢰 플랫폼 모듈(TPM)은 신뢰 컴퓨팅 그룹(TCG)에서 구상한 보안 장치로, 하드웨어 난수 생성, 암호 키 안전 생성, 원격 증명, 바인딩, 밀봉된 저장소 등의 기능을 제공하여 플랫폼 무결성 보장, 디스크 암호화, 디지털 권한 관리(DRM) 등 다양한 분야에 활용되며 여러 유형으로 구현되고 있다. - 난수 발생기 - /dev/random
/dev/random은 리눅스 커널에서 제공하는 난수 장치 파일로, 안전한 난수 생성을 위해 사용되며, 엔트로피 풀이 비어있을 경우 블로킹되는 특징을 가진다. - 정보 이론 - 양자 컴퓨터
양자 컴퓨터는 양자역학적 현상을 이용하여 정보를 처리하는 컴퓨터로, 큐비트를 통해 0과 1을 동시에 표현하여 특정 연산에서 기존 컴퓨터보다 빠른 속도를 보이며 암호 해독, 신약 개발 등 다양한 분야에 혁신을 가져올 것으로 기대된다. - 정보 이론 - 정보 엔트로피
정보 엔트로피는 확률 변수의 불확실성을 측정하는 방법으로, 사건 발생 가능성이 낮을수록 정보량이 커진다는 원리에 기반하며, 데이터 압축, 생물다양성 측정, 암호화 등 다양한 분야에서 활용된다.
난수 발생기 | |
---|---|
개요 | |
종류 | 알고리즘 |
분야 | 컴퓨터 과학, 수학, 통계학 |
상세 정보 | |
목적 | 예측 불가능한 수열 생성 |
특징 | 무작위성 균등성 독립성 |
응용 분야 | 컴퓨터 시뮬레이션 암호학 통계적 샘플링 도박 |
종류 | 의사 난수 생성기 하드웨어 난수 생성기 진정한 난수 생성기 |
추가 정보 | |
관련 개념 | 난수열, 확률 분포, 몬테카를로 방법 |
관련 인물 | 존 폰 노이만, 도널드 커누스 |
2. 난수 생성 방법
난수 생성 방법은 크게 물리적 난수 생성과 의사 난수 생성 두 가지로 나뉜다.
- 물리적 난수 생성: 하드웨어 난수 생성기를 사용하며, 양자 역학 법칙으로 설명되는 예측 불가능성이 특징이다.[4][5] 방사성 붕괴, 열 잡음, 샷 잡음 등의 물리 현상을 이용한다.[41][42] 암호화 해시 함수 같은 무작위 추출기로 난수 품질을 높인다.
- 의사 난수 생성: 의사 난수 생성기(PRNG) 알고리즘을 사용한다. PRNG는 긴 숫자 열을 자동으로 만들지만, 결국 반복되거나 메모리 사용량이 늘어난다. 시드라는 고정된 값에 따라 생성값이 결정된다. 선형 합동 생성기가 대표적이며, 존 폰 노이만의 중간 제곱 방법은 품질이 낮다.
2. 1. 물리적 난수 생성
하드웨어 난수 생성기는 본질적으로 무작위적인 원자 또는 아원자 물리 현상을 기반으로 하며, 그 예측 불가능성은 양자 역학의 법칙으로 설명할 수 있다.[4][5] 이러한 엔트로피의 원천에는 방사성 붕괴, 열 잡음, 샷 잡음, 제너 다이오드의 애벌랜치 잡음, 클럭 드리프트, 하드 디스크 읽기-쓰기 헤드의 실제 움직임의 타이밍, 그리고 무선 잡음 등이 포함된다.[41][42]그러나 물리적 현상과 이를 측정하는 도구는 일반적으로 비대칭성과 체계적 편향을 가지기 때문에 결과가 균일하게 무작위적이지 않을 수 있다. 이러한 문제를 해결하기 위해 암호화 해시 함수와 같은 무작위 추출기를 사용하여 균일하지 않은 무작위 소스에서 비트의 균일한 분포에 접근할 수 있지만, 비트 전송률은 낮아진다.
광학적 혼돈[6][7] 및 증폭 자발 방출 잡음과 같은 광대역 광자 엔트로피 소스의 출현은 물리적 난수 생성기의 개발에 크게 기여하였다. 특히, 광학적 혼돈은 높은 대역폭과 큰 진폭으로 인해 고속 난수를 물리적으로 생성할 수 있는 잠재력이 크다.[43][44] 2013년에는 혼돈 레이저를 기반으로 하는 고속 실시간 물리적 난수 생성기의 프로토타입이 제작되었다.[8][45]
이러한 엔트로피 정보를 수집하기 위해 다양한 방법들이 고안되었다. 한 가지 기술은 예측 불가능한 소스의 비디오 스트림 프레임에 대해 해시 함수를 실행하는 것이다. Lavarand는 여러 개의 용암 램프 이미지를 사용하여 이 기술을 사용했다. [http://www.fourmilab.ch/hotbits/ HotBits]는 가이거-뮐러 계수관으로 방사성 붕괴를 측정했고,[9] Random.org은 일반 라디오로 기록된 대기 잡음의 진폭 변화를 사용한다.
2. 2. 의사 난수 생성
대부분의 컴퓨터에서 생성되는 난수는 의사 난수 생성기(PRNG)를 사용한다. PRNG는 좋은 무작위 특성을 가진 긴 숫자 열을 자동으로 생성할 수 있지만, 결국 시퀀스가 반복되거나 메모리 사용량이 무한정 증가한다. 이러한 난수는 많은 상황에서 괜찮지만, 엔트로피의 소스로 사용되는 전자기 대기 소음에서 생성된 숫자만큼 무작위적이지 않다.[12] 알고리즘에 의해 생성된 일련의 값은 일반적으로 "시드"라고 하는 고정된 숫자에 의해 결정된다.가장 일반적인 의사 난수 생성기 중 하나는 선형 합동 생성기이며, 이는 다음의 반복을 사용한다.
:
여기서 a, b 및 m은 큰 정수이고, 는 일련의 의사 난수로서 X의 다음 값이다. 공식이 생성할 수 있는 최대 숫자는 모듈러스 m이다. 반복 관계는 기간이 훨씬 길고 통계적 특성이 더 우수하도록 행렬로 확장될 수 있다.[13] 단일 선형 합동 생성기의 특정 비무작위 특성을 피하기 위해, 승수 계수 a의 약간 다른 값을 가진 몇 개의 난수 생성기를 병렬로 사용할 수 있으며, 여러 다른 생성기 중에서 선택하는 '마스터' 난수 생성기가 있다.
존 폰 노이만이 제안한 소위 중간 제곱 방법은 난수를 생성하기 위한 간단한 펜과 종이 방법이다. 구현은 간단하지만 출력 품질이 좋지 않다. 기간이 매우 짧고 출력 시퀀스가 거의 항상 0으로 수렴되는 등 심각한 약점이 있다. 최근의 혁신은 중간 제곱과 바일 수열을 결합하는 것이다. 이 방법은 긴 주기를 통해 고품질 출력을 생성한다.[14]
대부분의 컴퓨터 프로그래밍 언어에는 난수 생성기를 제공하는 함수 또는 라이브러리 루틴이 포함되어 있다. 이들은 종종 난수 바이트 또는 워드, 또는 0과 1 사이에서 균등하게 분포된 부동 소수점 숫자를 제공하도록 설계되었다.
이러한 라이브러리 함수의 품질(무작위성)은 완전히 예측 가능한 출력에서 암호화적으로 안전한 출력까지 매우 다양하다. Python, Ruby, R, IDL 및 PHP를 포함한 많은 언어의 기본 난수 생성기는 메르센 트위스터 알고리즘을 기반으로 하며, 언어 설명서에 명시되어 있듯이 암호화 목적에 충분하지 않다. 이러한 라이브러리 함수는 종종 통계적 특성이 좋지 않으며 수만 번의 시도 후에 패턴을 반복하는 경우도 있다. 이는 종종 컴퓨터의 실시간 시계를 시드로 사용하여 초기화되는데, 이러한 시계는 64비트이고 나노초 단위로 측정되어 사람의 정밀도를 훨씬 초과하기 때문이다. 이러한 함수는 특정 작업(예: 비디오 게임)에 충분한 무작위성을 제공할 수 있지만, 암호화 응용 프로그램 또는 통계와 같이 고품질 무작위성이 필요한 경우에는 적합하지 않다.[15]
대부분의 운영 체제에서 훨씬 더 높은 품질의 난수 소스를 사용할 수 있다. 예를 들어 다양한 BSD 버전, Linux, Mac OS X, IRIX 및 Solaris의 /dev/random 또는 Microsoft Windows의 CryptGenRandom을 사용할 수 있다. 위에서 언급한 것을 포함한 대부분의 프로그래밍 언어는 이러한 고품질 소스에 액세스할 수 있는 수단을 제공한다.
3. 난수 생성기의 활용
난수 생성기는 도박, 통계적 표본 추출, 컴퓨터 시뮬레이션, 암호학, 완전 무작위 설계 등 예측 불가능한 결과를 얻는 것이 중요한 여러 분야에서 널리 사용된다.[37] 특히 보안과 같이 예측 불가능성이 핵심인 응용 분야에서는 의사 난수 알고리즘보다 하드웨어 난수 생성기가 주로 사용된다.
의사 난수는 몬테카를로 방법을 사용한 시뮬레이션 개발에 매우 유용하다. 동일한 난수 시드를 사용하여 동일한 난수열을 다시 실행할 수 있어 디버깅이 쉽기 때문이다. 또한 암호학에서 시드를 비밀로 유지하면 송신자와 수신자가 동일한 숫자 집합을 키로 자동 생성할 수 있다.
컴퓨터 프로그래밍에서 의사 난수 생성은 중요하고 일반적인 작업이다. 암호화나 특정 수치 알고리즘에서는 매우 높은 수준의 무작위성이 요구되지만, 다른 많은 작업에서는 적당한 수준의 예측 불가능성만으로도 충분하다. 예를 들어 "오늘의 무작위 인용구"를 제시하거나, 컴퓨터 게임에서 컴퓨터가 제어하는 적의 움직임을 결정하는 데 사용될 수 있다.
겉보기에는 무작위화가 필요한 것처럼 보이는 일부 응용 분야는 실제로는 그렇게 간단하지 않다. 예를 들어 배경 음악 시스템에서 "무작위로" 음악 트랙을 선택하는 시스템은 무작위적으로 보여야 하지만, 실제로는 음악 선택을 제어하는 방법이 있을 수 있다. 진정으로 무작위적인 시스템에서는 동일한 항목이 연속으로 여러 번 나타나는 것에 제한이 없다.
3. 1. 도박
난수 생성기는 도박에서 많이 활용된다. 일반적으로 예측 불가능성이 가장 중요한 보안 등의 응용 프로그램에서는 의사 난수 알고리즘보다 하드웨어 난수 생성기를 선호한다.[37]의사 난수는 몬테카를로 방법에 의한 시뮬레이션을 개발할 때 매우 유용하다. 동일한 난수 시드에서 시작하여 동일한 난수열을 다시 실행할 수 있어 디버깅이 용이하기 때문이다. 또한 암호학에서도 시드가 비밀인 경우 송신자와 수신자는 키로 사용할 동일한 숫자 집합을 자동으로 생성할 수 있다.
3. 2. 통계적 표본 추출
난수 생성기는 통계적 표본 추출, 도박, 컴퓨터 시뮬레이션, 암호학, 완전 무작위 설계 및 예측 불가능한 결과가 필요한 기타 분야에서 활용된다.[37] 일반적으로 보안과 같이 예측 불가능성이 가장 중요한 응용 프로그램에서는 의사 난수 알고리즘보다 하드웨어 난수 생성기를 선호한다.통계적 표본 추출에서 난수 생성기는 모집단을 대표하는 표본을 무작위로 선택하는 데 사용된다. 한국에서는 여론 조사, 인구 조사 등에서 난수 생성을 이용한 표본 추출 방법이 활용된다.
3. 3. 컴퓨터 시뮬레이션
몬테카를로 방법 시뮬레이션 개발에는 의사 난수 생성기가 매우 유용하게 사용된다. 동일한 난수 시드에서 시작하여 동일한 난수열을 다시 실행할 수 있어 디버깅이 용이하다는 장점이 있다.[37] 또한 암호학에서도 '시드'가 비밀로 유지되는 경우, 송신자와 수신자가 키로 사용할 동일한 숫자 집합을 자동으로 생성할 수 있다.의사 난수의 생성은 컴퓨터 프로그래밍에서 중요하고 일반적인 작업이다. 암호화 및 특정 수치 알고리즘은 매우 높은 수준의 "겉보기" 무작위성을 요구하는 반면, 다른 많은 작업에서는 적당한 양의 예측 불가능성만 필요로 한다. 예를 들어 사용자에게 "오늘의 무작위 인용구"를 제시하거나, 컴퓨터 게임에서 컴퓨터 제어 적의 움직임을 결정하는 데 사용될 수 있다. 더 약한 형태의 "무작위성"은 해시 알고리즘과 분할 상환 검색 알고리즘 및 정렬 알고리즘을 생성하는 데 사용된다.
3. 4. 암호학
암호학에서 난수 생성기는 키 생성, 암호학적 논스 생성 등 보안 시스템의 핵심 요소로 활용된다.[37] 의사 난수 생성기는 몬테카를로 방법 시뮬레이션을 개발하는 데 유용하며, 동일한 난수 시드에서 시작하여 동일한 난수열을 다시 실행할 수 있어 디버깅이 용이하다. 암호학에서는 시드가 비밀로 유지되며, 송신자와 수신자는 이 시드를 사용하여 키로 사용할 동일한 숫자 집합을 자동으로 생성할 수 있다. (스트림 암호)의사 난수의 생성은 컴퓨터 프로그래밍에서 중요한 작업이다. 암호화 및 특정 수치 알고리즘에서는 매우 높은 수준의 "겉보기" 무작위성이 필요하지만, 다른 많은 작업에서는 적당한 수준의 예측 불가능성만으로도 충분하다. 예를 들어, 사용자에게 "오늘의 무작위 인용구"를 제시하거나, 컴퓨터 게임에서 컴퓨터 제어 적의 움직임을 결정하는 경우가 이에 해당한다.
4. 진정한 난수와 의사 난수
난수를 생성하는 주요 방법에는 두 가지가 있다. 첫 번째는 예측 불가능할 것으로 예상되는 물리적 현상을 측정하고, 측정 과정에서 발생할 수 있는 편향을 보정하는 방식이다. 여기에는 대기 잡음, 열 잡음, 그리고 기타 외부 전자기 및 양자 현상 측정이 포함된다. 예를 들어 단시간 내에 측정된 우주 배경 복사나 방사성 붕괴는 자연 엔트로피의 근원을 나타낸다.[2]
자연 발생원에서 엔트로피를 얻는 속도는 측정되는 물리 현상에 따라 달라진다. 따라서 자연적으로 발생하는 "진정한" 엔트로피의 발생원은 차단이라고 불리는데, 이는 요구를 충족할 만큼 충분한 엔트로피가 수집될 때까지 속도가 제한되기 때문이다. 대부분의 리눅스 배포판을 포함한 유닉스 계열 시스템에서 의사 장치 파일은 환경에서 충분한 엔트로피가 수집될 때까지 차단된다.[2]
두 번째 방법은 겉보기에 무작위적인 결과의 긴 시퀀스를 생성할 수 있는 계산 알고리즘을 사용하는 것이다. 이 시퀀스는 시드 값 또는 키라고 알려진 짧은 초기 값에 의해 결정된다. 따라서 시드 값이 알려지면 겉보기에 무작위적인 시퀀스 전체를 재현할 수 있다. 이러한 유형의 난수 생성기를 의사 난수 생성기라고 한다. 이 유형의 생성기는 자연 발생 엔트로피 소스에 의존하지 않지만, 자연 소스에 의해 주기적으로 시드될 수 있다.
일부 시스템은 하이브리드 방식을 사용하는데, 가능한 경우 자연 소스에서 수집된 난수를 제공하고, 주기적으로 재시드되는 소프트웨어 기반 암호학적으로 안전한 의사 난수 생성기(CSPRNG)로 폴백한다.
결정론적 논리에만 기반한 의사 난수 생성기는, 순수한 의미에서 "진정한" 난수 발생원으로 간주될 수 없지만, 실제로 보안이 중요한 애플리케이션에서도 일반적으로 충분한 경우가 있다. 신중하게 설계되고 구현된 의사 난수 생성기는 보안에 중요한 암호화 목적으로 인증될 수 있다.[3]
5. 후처리 및 통계적 검정
난수 생성기의 출력은 편향을 제거하고 통계적 특성을 개선하기 위해 후처리 과정을 거칠 수 있다. 생성된 난수가 실제로 무작위적인지 확인하기 위해 통계적 검정을 수행한다.[18][19][20]
양자 역학 기반 하드웨어 생성기와 같이 그럴듯한 난수 소스라고 하더라도, 완전히 편향되지 않은 숫자를 얻으려면 주의가 필요하다. 이러한 생성기의 동작은 온도, 전원 전압, 장치의 수명, 외부 간섭 등에 따라 자주 변경되기 때문이다.
생성된 난수는 사용하기 전에 통계적 테스트를 거쳐 기본 소스가 제대로 작동하는지 확인하고, 통계적 속성을 개선하기 위해 후처리하기도 한다. 예를 들어 TRNG9803 하드웨어 난수 생성기는 엔트로피 측정을 하드웨어 테스트로 사용하고, 시프트 레지스터 스트림 암호를 사용하여 난수 시퀀스를 후처리한다. 하지만 일반적으로 통계적 테스트를 사용하여 생성된 난수의 유효성을 검사하기는 어렵다. Wang과 Nicol은 여러 난수 생성기의 약점을 식별하는 데 사용되는 거리 기반 통계 테스트 기술을 제안했으며, Li와 Wang은 브라운 운동 특성을 이용하여 레이저 혼돈 엔트로피 소스를 기반으로 난수를 테스트하는 방법을 제안했다.
통계적 테스트는 난수 생성기의 후처리된 최종 출력이 실제로 편향되지 않았는지 확인하는 데에도 사용되며, 다양한 무작위성 검사 모음이 개발되고 있다.
6. 기타 고려 사항
몬테카를로 방법을 이용한 적분 계산과 같이 총 값 또는 평균 값의 계산으로 요약될 수 있는 일부 계산의 경우, 낮은 불일치 수열이라고도 불리는 준무작위 수를 사용하면 보다 정확한 해를 찾을 수 있다. 이러한 수열은 대략적으로 말해서 간격을 균등하게 채우는 명확한 패턴을 가지고 있다. 진정한 무작위 수열은 더 큰 간격을 남길 수 있으며, 보통 그렇게 한다.
난수 생성기는 도박, 통계적 표본 추출, 컴퓨터 시뮬레이션, 암호화, 완전 무작위 설계 등 예측 불가능한 결과를 생성하는 것이 바람직한 다른 분야에서 많이 사용된다. 일반적으로 보안과 같이 예측 불가능성을 최우선 기능으로 하는 용도에서는, 필요한 경우 하드웨어 생성기가 의사 난수보다 일반적으로 사용된다.
의사 난수는 몬테카를로 방법에 의한 시뮬레이션을 개발할 때 매우 유용하다. 동일한 시드(seed, 종자, 종종 랜덤 시드라고 불린다)로 시작함으로써 동일한 난수열을 다시 실행할 수 있어 디버깅이 용이하기 때문이다. 암호에서는 시드를 비밀로 하고, 또한 암호적인 강도가 있는 난수열 생성기를 사용한다. 송신자와 수신자가 동일한 시드를 "키"로 사용한다(스트림 암호).
의사 난수의 생성은 컴퓨터 프로그래밍에서 중요하고 일반적인 작업이다. 암호 기술이나 다른 수치 알고리즘에서는 매우 높은 수준의 겉보기 무작위성이 요구되지만, 많은 연산에서는 어느 정도의 예측 불가능성이 있으면 된다. 간단한 예로는 사용자에게 "오늘의 랜덤 단어"를 제시하거나, 컴퓨터 게임에서 컴퓨터 제어 적이 어느 쪽으로 움직일지를 결정하는 것이 있다. 알고리즘의 관점에서는 해시 함수에는 용도에 따라 약하거나 강한 무작위성이 필요하며[37], 난수 선택 알고리즘에서는 무작위성의 품질이 결과에 영향을 미칠 수 있다.
겉보기에 무작위화에 적합해 보이는 앱이라도, 실제로는 그렇게 완전한 난수가 아닌 경우가 있다. 예를 들어, BGM 시스템을 위해 음악 트랙을 "랜덤하게" 선택하는 시스템 등이 예이다.
7. 백도어 문제
암호학적으로 안전한 난수 생성기에 예측 가능한 결과값을 얻을 수 있는 백도어가 삽입되면, 이를 활용하는 암호화 시스템 전체가 공격에 취약해질 수 있다.
미국 국가안보국(NSA)은 NIST 인증 암호학적으로 안전한 의사 난수 생성기인 Dual EC DRBG에 백도어를 삽입한 것으로 알려졌다.[30] 매튜 그린에 따르면, 이 난수 생성기를 사용해 SSL 연결을 생성하면 NSA는 난수 생성기의 상태를 파악하여 SSL 연결을 통해 전송되는 데이터를 모두 읽을 수 있게 된다.[30] Dual_EC_DRBG는 2013년 NSA 백도어가 확인되기 전부터 보안 취약성과 백도어 가능성이 제기되었지만, RSA 시큐리티 등에서 실제로 사용되었다.[31] 이후 RSA 시큐리티는 불런 프로그램의 일환으로 자사 제품에 NSA 백도어를 고의로 삽입했다는 의혹을 받았으나, RSA는 이를 부인했다.[32]
하드웨어 난수 생성기(RNG)가 엔트로피를 적게 생성하도록 은밀하게 수정될 수 있다는 이론도 제기되었다. 칩의 도펀트 마스크를 수정하는 방식이 사용될 수 있으며, 이는 광학적 역설계로도 탐지하기 어렵다.[33] 리눅스에서는 이러한 하드웨어 RNG 백도어 문제를 해결하기 위해 RDRAND 출력을 다른 엔트로피 소스와 혼합하는 방식을 사용한다.[34][35]
2010년에는 다중 주 복권 협회(MUSL)의 정보 보안 이사가 MUSL의 보안 RNG 컴퓨터에 백도어 맬웨어를 설치하여 미국 복권 추첨을 조작한 사건이 발생했다.[36] 이 해킹으로 그는 수년에 걸쳐 총 1650만달러를 땄다.
참조
[1]
간행물
Random Number Generator
Springer Nature Switzerland
2023
[2]
문서
random
Linux
[3]
문서
arc4random
OpenBSD
[4]
논문
Quantum random number generators
2016
[5]
논문
Quantum generators of random numbers
2021
[6]
논문
All-optical fast random number generator
2010-09-13
[7]
논문
Fully photonics-based physical random bit generator
2016-07-15
[8]
논문
4.5 Gbps high-speed real-time physical random bit generator
2013-08-26
[9]
웹사이트
HotBits: Genuine Random Numbers
http://www.fourmilab[...]
2009-06-27
[10]
웹사이트
Games for Extracting Randomness
http://www.wisdom.we[...]
2009-06-27
[11]
웹사이트
TrueCrypt Beginner's Tutorial, Part 3
http://www.truecrypt[...]
2009-06-27
[12]
웹사이트
RANDOM.ORG – True Random Number Service
https://www.random.o[...]
2016-01-14
[13]
웹사이트
High Dimensionality Pseudo Random Number Generators
http://www.ianschuma[...]
2018-11-21
[14]
arXiv
Middle-Square Weyl Sequence RNG
2020-05-19
[15]
논문
MersenneTwister: A 623-dimensionally Equidistributed Uniform Pseudo-Random Number Generator
1998
[16]
논문
Generation of random sequences by human subjects: a critical survey of the literature
[17]
논문
Generation of random sequences by human subjects: a critical survey of the literature
[18]
웹사이트
TRNG9803 True Random Number Generator
http://www.trng98.se[...]
www.TRNG98.se
[19]
서적
Computer Security - ESORICS 2014
Springer LNCS
[20]
논문
Brownian motion properties of optoelectronic random bit generators based on laser chaos
2016-07-11
[21]
conference
Computational Science – ICCS 2020
2020
[22]
웹사이트
Uniform random floats: How to generate a double-precision floating-point number in [0, 1] uniformly at random given a uniform random source of bits
http://mumble.net/~c[...]
2021-09-04
[23]
웹사이트
A new specification for std::generate_canonical
http://www.open-std.[...]
[24]
웹사이트
Drawing random floating-point numbers from an interval
https://hal.archives[...]
2021-09-04
[25]
웹사이트
"[stdlib] Floating-point random-number improvements by NevinBR · Pull Request #33560 · apple/swift"
https://github.com/a[...]
[26]
논문
Fast Random Integer Generation in an Interval
2019-02-23
[27]
웹사이트
An optimal algorithm for bounded random integers by stephentyrone · Pull Request #39143 · apple/swift
https://github.com/a[...]
[28]
웹사이트
Common generation methods
https://www.mathwork[...]
2024-09-08
[29]
웹사이트
G05 – Random Number Generators
http://www.nag.co.uk[...]
2012-02-09
[30]
웹사이트
The Many Flaws of Dual_EC_DRBG
http://blog.cryptogr[...]
2013-09-18
[31]
웹사이트
RSA warns developers not to use RSA products
http://blog.cryptogr[...]
2013-09-20
[32]
웹사이트
We don't enable backdoors in our crypto products, RSA tells customers
https://arstechnica.[...]
2013-09-20
[33]
웹사이트
Researchers can slip an undetectable trojan into Intel's Ivy Bridge CPUs
https://arstechnica.[...]
2013-09-18
[34]
웹사이트
I am so glad I resisted pressure from Intel engineers to let /dev/random rely only on the RDRAND instruction.
https://plus.google.[...]
Google Plus
[35]
웹사이트
Re: [PATCH] /dev/random: Insufficient of entropy on many architectures
https://lwn.net/Arti[...]
LWN
[36]
뉴스
Inside the Biggest Lottery Scam Ever
http://www.thedailyb[...]
The Daily Beast
2015-07-07
[37]
문서
一般のハッシュ関数では必ずしも強い必要はないが、[[暗号学的ハッシュ関数]]では強いランダム性が必要
[38]
문서
random(4) – Linux Programmer's Manual – Special Files
[39]
문서
十分でない場合もあり、そういった場合は真の乱数が必要
[40]
문서
arc4random(3)
[41]
논문
Quantum random number generators
2016
[42]
논문
Quantum generators of random numbers
2021
[43]
웹사이트
光化学的カオス
https://academic-acc[...]
2023-06-21
[44]
간행물
Fully photonics-based physical random bit generator
2016-07-15
[45]
간행물
4.5 Gbps high-speed real-time physical random bit generator
2013-08-26
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com